package edu.smxy.associationmanagement.services.member;

import edu.smxy.associationmanagement.domain.Member;
import edu.smxy.associationmanagement.domain.MemberResult;

import java.util.List;
/**
* MemberService 服务层接口
* @date  2019/04/18
* @author: : SDH
* @description: 成员管理 服务层接口
*/
public interface MemberService {
	/**
	 * 根据id删除Member数据
	 * @param id id
	 * @return 数据库受影响行数
	 */
	int deleteByPrimaryKey(final Integer id);
	
	/**
	 * 插入Member数据
	 * @param record Member对象
	 * @return 数据库受影响行数
	 */
	int insert(final Member record);
	
	/**
	 * 安全插入Member数据
	 * @param record Member对象
	 * @return 数据库受影响行数
	 */
	int insertSelective(final Member record);
	
	/**
	 * 根据id查询Member数据
	 * @param id id
	 * @return 查询到的Member对象
	 */
	Member selectByPrimaryKey(final Integer id);
	
	/**
	 * 安全更新Member数据
	 * @param record Member对象
	 * @return 数据库受影响行数
	 */
	int updateByPrimaryKeySelective(final Member record);
	
	/**
	 * 更新Member数据
	 * @param record Member对象
	 * @return 数据库受影响的行数
	 */
	int updateByPrimaryKey(final Member record);
	
	/**
	 * 根据协会id获取该协会所有成员
	 * @param id 协会id
	 * @return List<Member>  Member对象集合
	 */
	List<Member> getAllMemberByAssociationId(final Integer id);
	
	/**
	 * 根据MemberResult对象插入数据
	 * @param result MemberResult对象
	 * @return 数据库受影响行数
	 */
	int insertbyexcel(final MemberResult result);
}
